x86: Enhance Cx stability by adding softirq check before entry cstate
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 3 Jun 2008 08:35:02 +0000 (09:35 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 3 Jun 2008 08:35:02 +0000 (09:35 +0100)
commit7534d30b438b3ab76967743bbb162e6b60dfe823
treedd94c51b9648bde2890bf751e693127741152aaa
parent85745512c5b0251e59685a82e667b834b106bbf2
x86: Enhance Cx stability by adding softirq check before entry cstate

Without checking softirq_pending before entry Cx state, softirq such
as SCHEDULE_SOFTIRQ and TIMER_SOFTIRQ can't be handled timely. It may
cause severe failures such as disk I/O failure.

This patch addresses the issue above, meanwhile move timing points
closer to cstate entry/exit point to make C3 residency more accurate,
and enable irq a little earlier.

Signed-off-by: Wei Gang <gang.wei@intel.com>
Signed-off-by: Tian Kevin <kevin.tian@intel.com>
xen/arch/x86/acpi/cpu_idle.c